#pragma once
#include <nice2d/widgets/layout.h>

class VBoxLayout : public Layout
{
    DECLARE_OBJECT(VBoxLayout)
public:
    VBoxLayout();
    virtual ~VBoxLayout();
public:
    void addWidget(ControlPointer widget, HMode mode = HMode_Center);
protected:
    virtual void adjust()override;
private:
    std::unique_ptr<class VBoxLayoutData> data;
};

class HBoxLayout : public Layout
{
    DECLARE_OBJECT(HBoxLayout)
public:
    HBoxLayout();
    virtual ~HBoxLayout();
public:
    void addWidget(ControlPointer widget, VMode mode = VMode_Center);
protected:
    virtual void adjust()override;
private:
    std::unique_ptr<class HBoxLayoutData> data;
};
